11 research outputs found
Focusing on Refinement Typing
We present a logically principled foundation for systematizing, in a way that
works with any computational effect and evaluation order, SMT constraint
generation seen in refinement type systems for functional programming
languages. By carefully combining a focalized variant of call-by-push-value,
bidirectional typing, and our novel technique of value-determined indexes, our
system generates solvable SMT constraints without existential (unification)
variables. We design a polarized subtyping relation allowing us to prove our
logically focused typing algorithm is sound, complete, and decidable. We prove
type soundness of our declarative system with respect to an elementary
domain-theoretic denotational semantics. Type soundness implies, relatively
simply, the total correctness and logical consistency of our system. The
relative ease with which we obtain both algorithmic and semantic results
ultimately stems from the proof-theoretic technique of focalization.Comment: 61 pages + appendix with proofs, Just Accepted version of paper (with
new title) at ACM Transactions on Programming Languages and System
Sound and complete bidirectional typechecking for higher-rank polymorphism with existentials and indexed types
Bidirectional typechecking, in which terms either synthesize a type or are checked against a known type, has become popular for its applicability to a variety of type systems, its error reporting, and its ease of implementation. Following principles from proof theory, bidirectional typing can be applied to many type constructs. The principles underlying a bidirectional approach to indexed types (generalized algebraic datatypes) are less clear. Building on proof-theoretic treatments of equality, we give a declarative specification of typing based on focalization. This approach permits declarative rules for coverage of pattern matching, as well as support for first-class existential types using a focalized subtyping judgment. We use refinement types to avoid explicitly passing equality proofs in our term syntax, making our calculus similar to languages such as Haskell and OCaml. We also extend the declarative specification with an explicit rules for deducing when a type is principal, permitting us to give a complete declarative specification for a rich type system with significant type inference. We also give a set of algorithmic typing rules, and prove that it is sound and complete with respect to the declarative system. The proof requires a number of technical innovations, including proving soundness and completeness in a mutually recursive fashion.EPSRC grant EP/N02706X/
Microbial minorities modulate methane consumption through niche partitioning
Microbes catalyze all major geochemical cycles on earth. However, the role of microbial traits and community composition in biogeochemical cycles is still poorly understood mainly due to the inability to assess the community members that are actually performing biogeochemical conversions in complex environmental samples. Here we applied a polyphasic approach to assess the role of microbial community composition in modulating methane emission from a riparian floodplain. We show that the dynamics and intensity of methane consumption in riparian wetlands coincide with relative abundance and activity of specific subgroups of methane-oxidizing bacteria (MOB), which can be considered as a minor component of the microbial community in this ecosystem. Microarray-based community composition analyses demonstrated linear relationships of MOB diversity parameters and in vitro methane consumption. Incubations using intact cores in combination with stable isotope labeling of lipids and proteins corroborated the correlative evidence from in vitro incubations demonstrating γ-proteobacterial MOB subgroups to be responsible for methane oxidation. The results obtained within the riparian flooding gradient collectively demonstrate that niche partitioning of MOB within a community comprised of a very limited amount of active species modulates methane consumption and emission from this wetland. The implications of the results obtained for biodiversity–ecosystem functioning are discussed with special reference to the role of spatial and temporal heterogeneity and functional redundancy